package com.efast.cafe.portal.service.company;

import java.util.List;

import com.efast.cafe.framework.pager.Pagination;
import com.efast.cafe.framework.service.ICafeService;
import com.efast.cafe.portal.entity.company.PortalCompanyUserLevel;
import com.efast.cafe.portal.entity.company.PortalCompanyUserLevelUserDto;
import com.efast.cafe.portal.remote.company.PortalCompanyUserLevelService;


/**
 * ****************************************************************************
 * 
 * @File name : PortalCompanyUserLevelService.java
 *
 * @Author : bbqu
 *
 * @Date : 2016-9-5
 *
 * @Copyright Notice: Copyright (c) 2016 Efast Serv. All Rights Reserved. This
 *            software is published under the terms of the Efast Software
 *            License version 1.0, a copy of which has been included with this
 *            distribution in the LICENSE.txt file.
 * 
 * 
 *            ------------------------------------------------------------------
 *            ---------- Date Who Version Comments 2016-9-5 下午4:50:14 bbqu 1.0
 *            Initial Version
 ****************************************************************************
 */
public interface IPortalCompanyUserLevelService extends PortalCompanyUserLevelService,ICafeService<PortalCompanyUserLevel>{
	/**
	 * 分页查询
	 * 
	 * @Date : 2016-9-5
	 * @param pager
	 * @param portalCompanyUserLevel
	 * @return
	 */
	public Pagination<PortalCompanyUserLevel> queryPagePortalCompanyUserLevelList(
			Pagination<PortalCompanyUserLevel> pager, PortalCompanyUserLevel portalCompanyUserLevel);

	/**
	 * 通过id查询
	 * 
	 * @Date : 2016-9-6
	 * @param id
	 * @return
	 */
	public PortalCompanyUserLevel findUserLevelById(Long id);

	/**
	 * 新增
	 * 
	 * @Date : 2016-9-6
	 * @param portalCompanyUserLevel
	 * @return
	 */
	public Long insertUserlevel(PortalCompanyUserLevel portalCompanyUserLevel);

	/**
	 * 修改
	 * 
	 * @Date : 2016-9-6
	 * @param portalCompanyUserLevel
	 */
	public void update(PortalCompanyUserLevel portalCompanyUserLevel);

	/**
	 * 删除
	 * 
	 * @Date : 2016-9-6
	 * @param id
	 */
	public void del(Long id);

	/**
	 * 查询所有userlevel
	 * 
	 * @Date : 2016-9-7
	 * @return
	 */
	public List<PortalCompanyUserLevel> listUserLevels();

	/**
	 * 查询所有级别
	 * @return List<PortalCompanyUserLevel>
	 * @Author Administrator
	 * @Date 2017年9月25日
	 */

	public List<PortalCompanyUserLevel> userLevelAll();
	
	
	/**
	 * 查询选中级别下的人
	 * @return
	 */
	public List<PortalCompanyUserLevelUserDto> levelUserList(Long portal_company_user_level_id);
	
}
